Currently, when a user within an enterprise, e.g. a customer of the enterprise or a user working in the enterprise, requires information (for example, a customer looking to resolve some issues with a company's product or service that was purchased from the company), the user (or customer) may have a variety of sources available to him, including other users, online repositories of knowledge, and so on. The online repositories may be accessed by the user via the website of the enterprise or any other suitable means, such as, for example, through various channels or devices. However, the online repositories comprise huge amounts of information and it takes a considerable amount of time for the user to browse, filter, and access the required information before the user can actually access the required information.
Search capability is available to the user to enable him to search the repository for the information required. However, searches using such capability are generally performed based on keywords on records in the repositories that may or may not have been indexed. During the process of indexing, information (which may be in the form of keywords, strings, author, date of creation, and so on) is extracted from the repositories and the information is stored in catalogs of indexes. The catalogs are then searched to obtain the relevant records when the user enters a query.
However, current searches do not consider, and are not customized to the attributes of the user; his past history, e.g. real history, such as past touch points, and current session history; user preferences; and so on. This may result in the user viewing a lot of results which are relevant according to the search query entered, but that are not useful because they do not contain the information required. For example, the user may have been searching for billing of post paid customers and may have entered a search term ‘billing.’ In this example, the results returned may be related to billing of both prepaid customers and post paid customers. Here, the user must filter the results manually to view the information related to billing of post paid customers. This manual filtration of results is a cumbersome and time consuming process and often meets with only limited success.